package com.dyzx.hbb.modules.wms.vo;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

@Data
 @Schema(description = "入库单明细VO")
public class WmsStockInDetailsUVO {
    /**
     * 编号
     */
    @Schema(description = "编号")
    @JsonProperty("id")
    @NotNull(message = "编号不能为空")
    private Long id;
    /**
     * 状态 字典信息：sys_global_status   'Draft', 'Pending', 'Completed', 'Cancelled'
     */
    @Schema (description = "状态 字典信息：sys_global_status")
    @JsonProperty ("status")
    private Integer status;





    /**
     * 入库单号 (如：IN20240530001)
     */
     @Schema (description = "入库单号 (如：IN20240530001)")
     @NotNull(message = "入库单号 (如：IN20240530001)不能为空")
     @JsonProperty ("order_id")
    private Long orderId;

    /**
     * 数量
     */
    @Schema (description = "数量")
     @NotNull(message = "数量不能为空")
     @JsonProperty ("quantity")
    private Integer quantity;

    /**
     * 货位
     */
    @Schema (description = "货位")
     @NotNull(message = "货位不能为空")
     @JsonProperty ("location_id")
    private Long locationId;

    /**
     * 货位
     */
     @Schema (description = "货位")
      @NotNull(message = "货位不能为空")
     @JsonProperty ("location_area_id")
    private Long locationAreaId;

    /**
     * 仓库表（管理物理仓库信息）
     */
     @Schema (description = "仓库表（管理物理仓库信息）")
      @NotNull(message = "仓库表（管理物理仓库信息）不能为空")
      @JsonProperty ("house_id")
    private Long houseId;

    /**
     * 商品
     */
     @Schema (description = "商品")
      @NotNull(message = "商品不能为空")
      @JsonProperty ("product_id")
    private Long productId;

    /**
     * 金额
     */
     @Schema (description = "金额")
      @NotNull(message = "金额不能为空")
      @JsonProperty ("uni_price")
    private Long uniPrice;

    /**
     * 实际入库数量（允许部分入库）
     */
     @Schema (description = "实际入库数量（允许部分入库）")
      @NotNull(message = "实际入库数量（允许部分入库）不能为空")
      @JsonProperty ("received_quantity")
    private Integer receivedQuantity;


}
